/*******************************************
  Jose Andres Lara Vecino

  Author       : $Author: cainlara@gmail.com $
  Last CheckIn : $Date: 2012-10-29 19:04:52 +0000 (Mon, 29 Oct 2012) $
  Revision     : $Revision: 108 $
*******************************************/

package dao;

import static utilidad.Util.cadenaValida;
import generico.GenericoDao;

import java.util.List;

import persistencia.TmUsuario;
import core.TestManagerException;

/**
 * Capa DAO para el modulo usuarios.
 * 
 * @author jose.lara 06.06.2012
 */
public class UsuarioDao extends GenericoDao<TmUsuario> {
    private static final long serialVersionUID = -8262209039280216671L;
    
    public UsuarioDao() {
    }
    
    public List<TmUsuario> getResultFindAll() throws TestManagerException {
        return super.getResultFindAll(TmUsuario.class.getName());
    }
    
    public TmUsuario getUsuarioByUserName(String nombreUsuario) throws TestManagerException {
        if(!cadenaValida(nombreUsuario)) {
            throw new IllegalArgumentException("EL nombre de usuario no puede ser nulo ni vacio");
        }
        
        return getUniqueResultFindByPropertie("nombreUsuario", nombreUsuario, TmUsuario.class.getName());
    }
}